package javaes.dados.pedido;

import java.util.List;

import javaes.dados.generico.InsertUpdateDeleteHibernate;
import javaes.dados.generico.ObterRegistros;
import javaes.modelo.Pedido;

public class PedidoDAOHibernate implements PedidoDAO
{

	private ObterRegistros<Pedido> obt;
	
	@SuppressWarnings({ "unchecked", "rawtypes" })
	public PedidoDAOHibernate()
	{
		this.obt = new  ObterRegistros(new Pedido());
	}
	
	@Override
	public void salvar(Pedido pedido) throws Exception 
	{
		try
        {
           InsertUpdateDeleteHibernate.salva(pedido);
        }
        catch(Exception erro)
        {
           throw new Exception(erro.getMessage());
        }
		
	}

	@Override
	public void excluir(Pedido pedido) throws Exception
	{
		 try
	      {
	          InsertUpdateDeleteHibernate.exclui(pedido);
	      }
	      catch(Exception erro)
	      {
	          throw new Exception(erro.getMessage());
	      }
		
	}

	@Override
	public Pedido buscaPorID(long id) throws Exception 
	{
		return 	(Pedido)this.obt.buscar(id, "numPed");
	}

	@Override
	public List<Pedido> listar() throws Exception 
	{
		return this.obt.listar();
	}

}
